The virtual 3D objects presented on the computer display are an illusion of a two-dimensional projection. Selecting a certain point on one of the virtual 3D objects is achieved by selecting a spot on the computer display associated with a certain point of the virtual 3D objects. Taking into consideration the 3D location of each point on the virtual 3D objects, the position of the virtual camera of the computer, and the position of spot selected on the computer display, determines which point on the 3D objects is selected. This process or technique is utilized in most three-dimensional computer applications.
In many cases, the aforementioned process or technique cannot be utilized. For example, when viewing real 3D objects through a transparent surface, the location of the real 3D objects is unknown, and the position of the user's point of view is also unknown. Accordingly, there is no way that touching a spot on the transparent surface leads to selecting a corresponding point on the real 3D objects. This problem applies when using a head mounted display (HMD) in the form of eye glasses such as GOOGLE GLASS or the like. This problem occurs when using a modern digital camera when presenting a scene in front of the camera, on the camera screen. Also the problem arises, when using a modern transparent computer screen, where real objects are located and can be seen from behind the transparent computer screen.
Generally there is a plain need for a solution that enables selecting or interacting with real 3D objects that can be seen through transparent surfaces or computer screens. This solution can improve the use of modern HMDs, digital cameras, and transparent computer screens when it comes to interacting with surrounding objects or environments.